﻿Ext.namespace('iOS.Bar');

/*
 * cardView上的bar的抽象类
 */
Ext.define('ToolBar', {
	extend : 'BaseBar',

    statics : {
        BaseCls    : 'tool-bar',
        ToolbarBtn : 'toolbar-btn',
        ArrowBtn   : 'arrow-btn',
        RectBtn    : 'rect-btn',
        LeftBtn    : 'left-btn',
        RightBtn   : 'right-btn',
        BarTitle   : 'bar-title',
        BtnContent : 'btn-content'
    },

    _eventList: [
        ['changeBtnBar'],
        ['addEvt']
    ],

    _curCardBtnCfg: null,

    curCard: null,

    /*
     * 本card中所有按钮容器集
     * cardName: btnBar
     */
    btnBars: {},

    changeBtnBar: function(tarCard, direction){
        var curBtnBar = this.btnBars[this.curCard].getElCache(),
            tarBtnBar = this.btnBars[tarCard].getElCache(),
            curEls, tarEls;
        curEls = curBtnBar.children().not(':last');
        tarEls = tarBtnBar.children().not(':last'); 
        tarEls.css({
            '-webkit-transform': getTrans(direction == 'right'?'-':''),
            'opacity'          : '0'
        });
        tarBtnBar.show();
        setTimeout(function(){
            tarEls.css({
                '-webkit-transform': 'translate3d(0, 0, 0)',
                'opacity'          : '1'
            });
            curEls.css({
                '-webkit-transform': getTrans(direction == 'right'?'':'-'),
                'opacity'          : '0'
            });
            curBtnBar.children(':last').hide();
            tarBtnBar.children(':last').show();
        }, 1);
        $(curEls[0]).on('webkitTransitionEnd', function(){
            curBtnBar.hide();
            $(this).off('webkitTransitionEnd');
        });
        this.curCard = tarCard;
        function getTrans(d){
            return 'translate3d(' + d + System.width / 2 * 0.9 + 'px, 0, 0)'
        }
    }
});

iOS.Bar.ToolBar = ToolBar;